From 77cbc980445f52632f2aa3d5076e351c2d4be5c5 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Tue, 24 Jan 2012 00:28:25 +0100 Subject: [PATCH] gdk: update csw event mask filter to handle smooth scroll Events of type GDK_SCROLL will be received if the client side window event mask has either GDK_SCROLL_MASK or GDK_SMOOTH_SCROLL_MASK. GDK_BUTTON_PRESS_MASK has been removed from type_masks[GDK_SCROLL] as that bit is often set for other-than-scrolling purposes, and yet have the window receive scroll events. In GTK+, this forces non-smooth events bubbling, even if the widgets above want smooth events, and legitimately set GDK_[SMOOTH_]SCROLL_MASK. --- gdk/gdkwindow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c index e1a4915420..7ddf5c45bd 100644 --- a/gdk/gdkwindow.c +++ b/gdk/gdkwindow.c @@ -8116,7 +8116,7 @@ static const guint type_masks[] = { GDK_ALL_EVENTS_MASK, /* GDK_CLIENT_EVENT = 28 */ GDK_VISIBILITY_NOTIFY_MASK, /* GDK_VISIBILITY_NOTIFY = 29 */ GDK_EXPOSURE_MASK, /* GDK_NO_EXPOSE = 30 */ - GDK_SCROLL_MASK | GDK_BUTTON_PRESS_MASK,/* GDK_SCROLL= 31 */ + GDK_SCROLL_MASK | GDK_SMOOTH_SCROLL_MASK,/* GDK_SCROLL= 31 */ 0, /* GDK_WINDOW_STATE = 32 */ 0, /* GDK_SETTING = 33 */ 0, /* GDK_OWNER_CHANGE = 34 */ -- 2.30.2